/*
 * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

// Autogenerated file -- DO NOT EDIT!

#ifndef PANDA_RUNTIME_UNIMPLEMENTED_INTRINSICS_INL_H_
#define PANDA_RUNTIME_UNIMPLEMENTED_INTRINSICS_INL_H_

% unimplemented = %w(
% )
% intrinsics_hash = Runtime::intrinsics.map { |i| [i.name, i] }.to_h
% unimplemented.each do |name|
%   intrinsic = intrinsics_hash[name]
%   args = intrinsic.signature.args.map.with_index do |_, idx|
%     "[[maybe_unused]] int64_t arg#{idx}_value, [[maybe_unused]] int64_t arg#{idx}_tag"
%   end.join(", ")
%   return_type, body = if intrinsic.signature.ret == 'any'
%     ['coretypes::TaggedValue', '    return coretypes::TaggedValue{0};']
%   else
%     ['void', '']
%   end
<%= return_type %> <%= name %>(<%= args %>) {
<%= body %>
}
% end

#endif  // PANDA_RUNTIME_UNIMPLEMENTED_INTRINSICS_INL_H_
